package com.adisi.objetos;

import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Alerta {
	private int idAlerta;
	private String objeto;
	private int idObjeto;
	private String motivoAlerta;
	private char tipoAlerta;
	private BigDecimal kmAlerta;
	private Date fechaAlerta;
	private EstadoAlerta estado;
	private int id_usuario;
	private Date fecha;
	
	private Object obj;
	
	private String mensaje;

	
	/**
	 * @param idAlerta
	 * @param objeto
	 * @param idObjeto
	 * @param motivoAlerta
	 * @param tipoAlerta
	 * @param kmAlerta
	 * @param fechaAlerta
	 * @param estado
	 * @param id_usuario
	 * @param fecha
	 */
	public Alerta(int idAlerta, String objeto, int idObjeto,
			String motivoAlerta, char tipoAlerta, BigDecimal kmAlerta,
			Date fechaAlerta, EstadoAlerta estado, int id_usuario, Date fecha) {
		super();
		this.idAlerta = idAlerta;
		this.objeto = objeto;
		this.idObjeto = idObjeto;
		this.motivoAlerta = motivoAlerta;
		this.tipoAlerta = tipoAlerta;
		this.kmAlerta = kmAlerta;
		this.fechaAlerta = fechaAlerta;
		this.estado = estado;
		this.id_usuario = id_usuario;
		this.fecha = fecha;
	}
	
	/**
	 * @param idAlerta
	 * @param objeto
	 * @param idObjeto
	 * @param motivoAlerta
	 * @param fechaAlerta
	 * @param estado
	 * @param id_usuario
	 * @param fecha
	 */
	public Alerta(int idAlerta, String objeto, int idObjeto,
			String motivoAlerta, Date fechaAlerta, EstadoAlerta estado, int id_usuario, Date fecha) {
		super();
		this.idAlerta = idAlerta;
		this.objeto = objeto;
		this.idObjeto = idObjeto;
		this.motivoAlerta = motivoAlerta;
		this.tipoAlerta = 'F';
		this.kmAlerta = null;
		this.fechaAlerta = fechaAlerta;
		this.estado = estado;
		this.id_usuario = id_usuario;
		this.fecha = fecha;
	}
	
	/**
	 * @param idAlerta
	 * @param idObjeto
	 * @param motivoAlerta
	 * @param kmAlerta
	 * @param estado
	 * @param id_usuario
	 * @param fecha
	 */
	public Alerta(int idAlerta, int idObjeto,
			String motivoAlerta, BigDecimal kmAlerta,
			EstadoAlerta estado, int id_usuario, Date fecha) {
		super();
		this.idAlerta = idAlerta;
		this.objeto = "Auto";
		this.idObjeto = idObjeto;
		this.motivoAlerta = motivoAlerta;
		this.tipoAlerta = 'K';
		this.kmAlerta = kmAlerta;
		this.fechaAlerta = null;
		this.estado = estado;
		this.id_usuario = id_usuario;
		this.fecha = fecha;
	}

	
	/**
	 */	
	public Alerta() {
		super();
		this.idAlerta = 0;
		this.objeto = null;
		this.idObjeto = 0;
		this.motivoAlerta = null;
		this.tipoAlerta = ' ';
		this.kmAlerta = BigDecimal.ZERO;
		this.fechaAlerta = null;
		this.estado = null;
		this.id_usuario = 0;
		this.fecha = null;
	}

	public int getIdAlerta() {
		return idAlerta;
	}
	public void setIdAlerta(int idAlerta) {
		this.idAlerta = idAlerta;
	}
	public String getObjeto() {
		return objeto;
	}
	public void setObjeto(String objeto) {
		this.objeto = objeto;
	}
	public int getIdObjeto() {
		return idObjeto;
	}
	public void setIdObjeto(int idObjeto) {
		this.idObjeto = idObjeto;
	}
	public String getMotivoAlerta() {
		return motivoAlerta;
	}
	public void setMotivoAlerta(String motivoAlerta) {
		this.motivoAlerta = motivoAlerta;
	}
	public char getTipoAlerta() {
		return tipoAlerta;
	}
	public void setTipoAlerta(char tipoAlerta) {
		this.tipoAlerta = tipoAlerta;
	}
	public BigDecimal getKmAlerta() {
		return kmAlerta;
	}
	public void setKmAlerta(BigDecimal kmAlerta) {
		this.kmAlerta = kmAlerta;
	}
	public Date getFechaAlerta() {
		return fechaAlerta;
	}
	public void setFechaAlerta(Date fechaAlerta) {
		this.fechaAlerta = fechaAlerta;
	}
	public EstadoAlerta getEstado() {
		return estado;
	}
	public void setEstado(EstadoAlerta estado) {
		this.estado = estado;
	}
	public int getId_usuario() {
		return id_usuario;
	}
	public void setId_usuario(int id_usuario) {
		this.id_usuario = id_usuario;
	}
	public Date getFecha() {
		return fecha;
	}
	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}

	public Object getObj() {
		return obj;
	}

	public void setObj(Object obj) {
		this.obj = obj;
	}
	
	public String getMensaje() {
		if(tipoAlerta=='F')
			return this.motivoAlerta + " : " + new SimpleDateFormat("dd/MM/yyyy").format(this.fecha);
		else
			return this.motivoAlerta + " : " + this.kmAlerta + " kms.";
	}
	
}
